//
// Created by liuping on 2019/1/31.
//

#pragma once

#include <type_traits>

template<typename T, typename... Args>
struct MaxType : std::integral_constant<int,
        (sizeof(T)>MaxType<Args...>::value ? sizeof(T) : MaxType<Args...>::value) > {};

template<typename T>
struct MaxType<T> : std::integral_constant<int, sizeof(T) >{};